Virtual memory and cache are both implemented in a similar manner in the memory hierarchy. However, each serves a slightly different purpose to enhance the capabilities of the main memory.

Cache

  • helps increase the effective access time of the main memory

Virtual Memory

  • extends the main memory address space
  • allows for concurrency of processes